1. Field
Exemplary embodiments of the present invention relate to a data storing circuit, and more particularly, to a data storing circuit including a one-time program cell, such as a laser fuse or an e-fuse.
2. Description of the Related Art
A laser fuse outputs a signal, or data, whose logic value becomes different according to whether the fuse is cut or not, and an e-fuse outputs a signal whose logic value becomes different according to whether its gate oxide is ruptured or not. The laser fuse and the e-fuse are being used for different semiconductor devices such as a memory device.
Generally, a memory device uses a redundancy scheme, which uses a redundancy cell and improves production yield by substituting a defective cell with the redundancy cell. When a wafer process is ended and a defective cell is detected during a test process, the detected defective cell is to be substituted with a redundancy cell. To substitute the defective cell with a redundancy cell, the address of the detected defective cell is to be stored. Generally, a laser fuse or an e-fuse is used to store the address of the defective cell. However, the laser fuse or the e-fuse has a feature that once they are programmed (that is, once the logic value of data is changed), it is difficult to change the logic value of the data. For example, it is difficult to recover the laser fuse once the laser fuse is cut, and it is difficult to recover the e-fuse once the e-fuse is ruptured. For this reason, a memory cell formed of a laser fuse or an e-fuse is referred to as a one-time program cell.
FIG. 1 illustrates information stored in a data storing circuit that is formed of a one-time program cell.
Referring to FIG. 1, the data storing circuit 100 includes storages 111 to 117 for storing a 7-bit data and a storage 121 for storing validity of the data. Each of the storages 111 to 117 is formed of “a one-time program cell” (that is, a cell whose data logic value may be changed only once) such as a laser fuse or an e-fuse.
The 7-bit data stored in the storages 111 to 117 is data that the data storing circuit 100 stores, and the signal stored in the storage 121 signifies the validity of the data stored in the storages 111 to 117. For example, when the signal stored in the storage 121 has a value of ‘1’, the data stored in the storages 111 to 117 is determined to be a valid data, and when the signal that is stored in the storage 121 has a value of ‘0’, the data stored in the storages 111 to 117 is determined to be an invalid data.
The data logic value of a one-time program cell may be changed only once from the initial value. For instance, when the initial value is ‘0’, the data logic value of the one-time program cell may be changed once to ‘1’, and when the initial value is ‘1’, the data logic value of the one-time program cell may be changed once to ‘0’. Hereafter, for illustration purposes, it is assumed that the initial value of the one-time program cell is ‘0’.
It is also assumed that the data storing circuit 100 stores data as shown in the following Table 1.
TABLE 1END6D5D4D3D2D1D011011100
According to Table 1, the data stored in the data storing circuit 100 is ‘1011100’; the stored data is a valid data as indicated by “1” is stored in the storage 121) and may be used for further processing. If it is decided that the stored data is erroneous after the data of ‘1011100’ is stored in the data storing circuit 100, the data stored in ‘EN’ is to be changed to ‘0’ to prevent the data stored in the data storing circuit 100 from being used. However, since the storage 121 is formed of a one-time program cell, it is difficult to change the data stored in the storage 121 back to ‘0’.